#pragma once

#include "exports.hpp"




class CRAWLER_API UrlProvider
{
public:

	typedef boost::shared_ptr<UrlProvider>         Ptr;
	typedef boost::shared_ptr<const UrlProvider>   const_Ptr;

public:

	UrlProvider();
	virtual ~UrlProvider();

	virtual void insert(QUrl url) = 0;
	virtual boost::optional<QUrl> next() = 0;
};
///////////////////////////////////////////////////////////////////////////////////////////////////
